Źródło poprawianego wykresu: https://www.reddit.com/r/dataisbeautiful/comments/18a7seg/oc_average_black_friday_deal_in_the_us_is_an/

Poprawiany wykres:

Ten wykres posiada kilka wad:

  1. Kolory są zdecydowanie źle dobrane,
  2. Myląca kolejność słupków, na początku 2022 potem 2021 i na końcu 2020, lepiej byłoby na odwrót,
  3. Niewyraźne podpisy osi.

Poniżej moja poprawa tego wykresu:

library(plotly)
df <- read.csv("dane.csv")

df$discount <- df$discount / 100

plot_ly(data = df,
        x = ~category,
        y = ~discount,
        color = ~factor(year),
        colors = c('#03045E', '#006399', '#48CAE4'),
        type = 'bar') %>%
  layout(title = "Average Black Friday discounts for certain products",
         titlefont = list(size = 25),
         xaxis = list(title = "Category", tickfont = list(size = 16)),
         yaxis = list(title = "Discount", tickfont = list(size = 16),
                      tickformat = ".0%", range = c(0, 0.35)),
         font = list(size = 14),
         margin = list(l = 50, r = 50, b = 20, t = 50),
         legend = list(title = list(text = "Year"), bgcolor = "transparent"),
         barmode = 'group')

Mój wykres jest lepszy ponieważ:

  1. Kolory są na pewno lepiej widoczne
  2. Słupki w grupach są ustawione intuicyjnie to znaczy im dalej tym rok jest większy
  3. Wszystkie podpisy są bardziej widoczne
  4. Dodatkowo wykres jest interaktywny więc można wybierać sobie które lata mają się na tym wykresie znaleźć jak również odczytać z niego dokładne wartości dla każdego słupka